# coding:utf-8

'''

super函数

作用
python子类继承父类的方法而使用的关键字，当子类继承父类后，就可以使用父类的方法

class Parent(object):
    def _init__(self):
        ...

class Child(Parent):
    def __init__(self):
        #  当前类   类的实例  使用父类方法
        super(Child,self).__init__()
 '''

class Parent(object):
    def __init__(self,name,age):
        self.name = name
        self.age = age
    def talk(self):
        print(f'{self.name} is {self.age} year old')

class Child(Parent):
    def __init__(self,name,age,sex):
        super(Child,self).__init__(name,age)
        self.sex = sex
    def talk(self):
        #  子类对父类方法进行重写，即python多态
        # 使用super调用父类方法
        super(Child,self).talk()
        print(f'{self.name} is {"男" if self.sex == 1 else "女"}')


cc = Child('fan',12,1)
print(cc.name,cc.age,cc.sex)
# 子类在无同名函数时，会往父类找，即子类继承父类，以调用父类成员方法和成员变量
cc.talk()
